package com.xbongbong.pro.statistic.pojo;

import com.alibaba.fastjson.JSONArray;
import lombok.Getter;
import lombok.Setter;
import lombok.ToString;

import java.io.Serializable;
import java.math.BigDecimal;
import java.util.List;

/**
 * @ClassName DwHistoryDataPojo
 * @Description 历史预警data里面的数据
 * @Author mengna.Deng
 * @Date 2021/4/28 19:02
 * @Version 1.0
 */
@Getter
@Setter
@ToString
public class DwHistoryDataPojo implements Serializable {
    private static final long serialVersionUID = -1L;

    /**
     * 触发条件
     */
    private List<DwTriggerConditionPojo> triggerCondition;
    /**
     * 提醒的人
     */
    private JSONArray executor;
    /**
     * 触发条件拼接成的str，方便展示
     */
    private String triggerConditionStr;
    /**
     * 触发时间
     */
    private Long triggerTime;
    /**
     * 预警值
     */
    private BigDecimal warnValue;
    /**
     * xAxisKey,便于柱形图和折线图定位
     */
    private String xAxisKey;
    /**
     * legendKey,便于柱形图和折线图定位
     */
    private String legendKey;
    /**
     * colGroupAttrs,便于统计图定位
     */
    private List<ChildValuePojo> colGroupAttrs;
    /**
     * rowGroupAttrs,便于统计图定位
     */
    private List<ChildValuePojo> rowGroupAttrs;
    /**
     * dataWarningId
     */
    private Long dataWarningId;
    /**
     * 添加这条记录时的预警业务触发时间
     */
    private Long dwTriggerTime;
    /**
     * 预警名称
     */
    private String warningName;

    public DwHistoryDataPojo(List<DwTriggerConditionPojo> triggerCondition, JSONArray executor, String triggerConditionStr, Long triggerTime, BigDecimal warnValue, String xAxisKey, String legendKey, List<ChildValuePojo> colGroupAttrs, List<ChildValuePojo> rowGroupAttrs, Long dataWarningId, Long dwTriggerTime, String warningName) {
        this.triggerCondition = triggerCondition;
        this.executor = executor;
        this.triggerConditionStr = triggerConditionStr;
        this.triggerTime = triggerTime;
        this.warnValue = warnValue;
        this.xAxisKey = xAxisKey;
        this.legendKey = legendKey;
        this.colGroupAttrs = colGroupAttrs;
        this.rowGroupAttrs = rowGroupAttrs;
        this.dataWarningId = dataWarningId;
        this.dwTriggerTime = dwTriggerTime;
        this.warningName = warningName;
    }

    public DwHistoryDataPojo() {
    }
}
